package com.hdjd.dao;

import com.hdjd.entities.GoodsReturn;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface GoodsReturnDao {
    int deleteByPrimaryKey(Integer retId);

    int insert(GoodsReturn record);

    /**
     * 新增商品退货记录
     * @param goodsReturn
     * @return
     */
    boolean insertGoodsReturn(GoodsReturn goodsReturn);

    /**
     * 根据商品id和退货日期统计某商品某日期的退货总数量
     * @param goId
     * @param retTime
     * @return
     */
    Integer sumGoodsRetNumByGoIdAndRetTime(@Param("goId") Integer goId, @Param("retTime") String retTime);

    /**
     * 根据商家id查询所有商品退货记录（也可查询某段日期）
     * @param accId
     * @param startDate
     * @param endDate
     * @param startSize
     * @param pageSize
     * @return
     */
    List<GoodsReturn> selectGoodsReturnListByAccId(@Param("accId") Integer accId, @Param("startDate") String startDate, @Param("endDate") String endDate, @Param("startSize") Integer startSize, @Param("pageSize") Integer pageSize);

    /**
     * 根据商家id统计商品退货记录数
     * @param accId
     * @param startDate
     * @param endDate
     * @return
     */
    Integer countGoodsReturnNumByAccId(@Param("accId") Integer accId, @Param("startDate") String startDate, @Param("endDate") String endDate);

    int updateByPrimaryKeySelective(GoodsReturn record);

    int updateByPrimaryKey(GoodsReturn record);
}